package runconfiguration;

import java.io.Serializable;

import fitness.SquareFitness;
import fitness.MathFitness;

import optimizers.commons.Parameter;
import optimizers.commons.RunConfig;

public class MathConfiguration extends RunConfig implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	public MathConfiguration() {
		super();
		template = new Parameter(TEMPLATE_OPTIMIZE_YES, 25, -60, 60,
				new double[0]);
		seqK = new Parameter(SEQK_OPTIMIZE_YES, 50, 3E-2 / 0.2, 2e1 / 0.2,
				new double[0]);
		inhK = new Parameter(INHK_OPTIMIZE_NO_7_6_RULE, 0, 0, 0, new double[0]);
		exoActivity = new Parameter(EXO_OPTIMIZE_NO, (double) 0.68181, 0, 0,
				new double[0]);
		exoSimpleKm = new Parameter(EXO_OPTIMIZE_NO, (double) 300, 0, 0,
				new double[0]);
		exoInhibKm = new Parameter(EXO_OPTIMIZE_NO, (double) 135, 0, 0,
				new double[0]);
		polActivity = new Parameter(POL_OPTIMIZE_NO, (double) 26.25, 0.01, 53, new double[0]);
		polKm = new Parameter(EXO_OPTIMIZE_NO, (double) 0, 0, 0,
				new double[0]);
		polDoubleStrandKm = new Parameter(EXO_OPTIMIZE_NO, (double) 0, 0, 0,
				new double[0]);
		nickActivity = new Parameter(NICK_OPTIMIZE_NO, (double) 2.6, 0.01, 5.2, new double[0]);
		nickKm = new Parameter(EXO_OPTIMIZE_NO, (double) 0, 0, 0,
				new double[0]);
		seqC = new Parameter(SEQC_OPTIMIZE_NO, 10, 1, 20, new double[0]);
		evaluator = new MathFitness();
	}
}
